home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1995 October / EnigmA AMIGA RUN 01 (1995)(G.R. Edizioni)(IT)[!][issue 1995-10][Aminet 7].iso / Aminet / gfx / show / svoUtah22.lha / svoUtahRLE / source / SV_ChangeSubs.c < prev    next >
C/C++ Source or Header  |  1995-04-14  |  9KB  |  250 lines

  1.  
  2.  /* SV_ChangeSubs.c
  3.     - Functions for controlling the SVObject -
  4.     (c) 1990-94 by Andreas R. Kleinert
  5.     Last changes : 14.02.1994
  6.  */
  7.  
  8. #include "svobject.h"
  9.  
  10. ULONG __saveds __asm SVO_SetAccessMode(  register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG mode);
  11. ULONG __saveds __asm SVO_SetWriteSubType( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 ULONG akt_type, register __a3 APTR future);
  12. ULONG __saveds __asm SVO_SetScreenType( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG type, register __a2 APTR future);
  13. ULONG __saveds __asm SVO_SetWindowFlags( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG flags, register __a2 APTR future);
  14. ULONG __saveds __asm SVO_SetWindowIDCMP( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG idcmp, register __a2 APTR future);
  15. struct Screen * __saveds __asm SVO_GetScreenAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 APTR future);
  16. struct Window * __saveds __asm SVO_GetWindowAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 APTR future);
  17. ULONG __saveds __asm SVO_SetScreenAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 struct Screen *writescreen, register __a3 APTR future);
  18. ULONG __saveds __asm SVO_SetWindowAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 struct Window *writeWindow, register __a3 APTR future);
  19. ULONG __saveds __asm SVO_SetReadName( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 char *readname, register __a3 APTR future);
  20. ULONG __saveds __asm SVO_SetWriteName( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 char *writename, register __a3 APTR future);
  21.  
  22.  
  23. /* *************************************************** */
  24. /* *                             * */
  25. /* * SVO_SetAccessMode : ...                         * */
  26. /* *                             * */
  27. /* *************************************************** */
  28.  
  29. ULONG __saveds __asm SVO_SetAccessMode(  register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG mode)
  30. {
  31.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  32.  ULONG retval = SVERR_NO_ERROR;
  33.  
  34.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  35.  
  36.  switch(mode)
  37.   {
  38.    case AKO_MEDIUM_DISK : SVObjectHandle->ah_Medium = mode;
  39.    case AKO_MEDIUM_CLIP : SVObjectHandle->ah_Medium = mode; break;
  40.  
  41.    default : retval = SVERR_ACTION_NOT_SUPPORTED; break;
  42.   }
  43.  
  44.  return(retval);
  45. }
  46.  
  47. /* *************************************************** */
  48. /* *                             * */
  49. /* * SVO_SetWriteType :                              * */
  50. /* *                             * */
  51. /* *************************************************** */
  52.  
  53. ULONG __saveds __asm SVO_SetWriteSubType( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 ULONG akt_type, register __a3 APTR future)
  54. {
  55.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  56.  
  57.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  58.  
  59.  SVObjectHandle->ah_WriteMode = akt_type;
  60.  
  61.  return(SVERR_NO_ERROR);
  62. }
  63.  
  64. /* *************************************************** */
  65. /* *                             * */
  66. /* * SVO_SetScreenType :                             * */
  67. /* *                             * */
  68. /* *************************************************** */
  69.  
  70. ULONG __saveds __asm SVO_SetScreenType( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG type, register __a2 APTR future)
  71. {
  72.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  73.  ULONG retval = SVERR_NO_ERROR;
  74.  
  75.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  76.  
  77.  SVObjectHandle->ah_ScreenType = type;
  78.  
  79.  if(SVObjectHandle->ah_SVDriverHandle)
  80.   {
  81.    struct SVDriverBase *SVDriverBase = SVObjectHandle->ah_DriverBase;
  82.  
  83.    retval = SVD_SetScreenType(SVObjectHandle->ah_SVDriverHandle, type, future);
  84.   }
  85.  
  86.  return(retval);
  87. }
  88.  
  89. /* *************************************************** */
  90. /* *                             * */
  91. /* * SVO_SetWindowFlags :                            * */
  92. /* *                             * */
  93. /* *************************************************** */
  94.  
  95. ULONG __saveds __asm SVO_SetWindowFlags( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG flags, register __a2 APTR future)
  96. {
  97.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  98.  ULONG retval = SVERR_NO_ERROR;
  99.  
  100.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  101.  
  102.  SVObjectHandle->ah_WindowFlags = flags;
  103.  
  104.  if(SVObjectHandle->ah_SVDriverHandle)
  105.   {
  106.    struct SVDriverBase *SVDriverBase = SVObjectHandle->ah_DriverBase;
  107.  
  108.    retval = SVD_SetWindowFlags(SVObjectHandle->ah_SVDriverHandle, flags, future);
  109.   }
  110.  
  111.  return(retval);
  112. }
  113.  
  114. /* *************************************************** */
  115. /* *                             * */
  116. /* * SVO_SetWindowIDCMP :                            * */
  117. /* *                             * */
  118. /* *************************************************** */
  119.  
  120. ULONG __saveds __asm SVO_SetWindowIDCMP( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __d1 ULONG idcmp, register __a2 APTR future)
  121. {
  122.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  123.  ULONG retval = SVERR_NO_ERROR;
  124.  
  125.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  126.  
  127.  SVObjectHandle->ah_WindowIDCMP = idcmp;
  128.  
  129.  if(SVObjectHandle->ah_SVDriverHandle)
  130.   {
  131.    struct SVDriverBase *SVDriverBase = SVObjectHandle->ah_DriverBase;
  132.  
  133.    retval = SVD_SetWindowIDCMP(SVObjectHandle->ah_SVDriverHandle, idcmp, future);
  134.   }
  135.  
  136.  return(retval);
  137. }
  138.  
  139. /* *************************************************** */
  140. /* *                             * */
  141. /* * SVO_GetScreenAddress :                          * */
  142. /* *                             * */
  143. /* *************************************************** */
  144.  
  145. struct Screen * __saveds __asm SVO_GetScreenAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 APTR future)
  146. {
  147.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  148.  
  149.  if(!SVObjectHandle) return(N);
  150.  
  151.  if(SVObjectHandle->ah_SVDriverHandle)
  152.   {
  153.    struct SVDriverBase *SVDriverBase = SVObjectHandle->ah_DriverBase;
  154.  
  155.    return(SVD_GetScreenAddress(SVObjectHandle->ah_SVDriverHandle, future));
  156.   }
  157.  
  158.  return(SVObjectHandle->ah_Screen);
  159. }
  160.  
  161. /* *************************************************** */
  162. /* *                             * */
  163. /* * SVO_GetWindowAddress :                          * */
  164. /* *                             * */
  165. /* *************************************************** */
  166.  
  167. struct Window * __saveds __asm SVO_GetWindowAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 APTR future)
  168. {
  169.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  170.  
  171.  if(!SVObjectHandle) return(N);
  172.  
  173.  if(SVObjectHandle->ah_SVDriverHandle)
  174.   {
  175.    struct SVDriverBase *SVDriverBase = SVObjectHandle->ah_DriverBase;
  176.  
  177.    return(SVD_GetWindowAddress(SVObjectHandle->ah_SVDriverHandle, future));
  178.   }
  179.  
  180.  return(SVObjectHandle->ah_Window);
  181. }
  182.  
  183. /* *************************************************** */
  184. /* *                             * */
  185. /* * SVO_SetScreenAddress : ...                      * */
  186. /* *                             * */
  187. /* *************************************************** */
  188.  
  189. ULONG __saveds __asm SVO_SetScreenAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 struct Screen *writescreen, register __a3 APTR future)
  190. {
  191.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  192.  
  193.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  194.  
  195.  SVObjectHandle->ah_WriteScreen = writescreen;
  196.  
  197.  return(SVERR_NO_ERROR);
  198. }
  199.  
  200. /* *************************************************** */
  201. /* *                             * */
  202. /* * SVO_SetWindowAddress : ...                      * */
  203. /* *                             * */
  204. /* *************************************************** */
  205.  
  206. ULONG __saveds __asm SVO_SetWindowAddress( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 struct Window *writeWindow, register __a3 APTR future)
  207. {
  208.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  209.  
  210.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  211.  
  212.  SVObjectHandle->ah_WriteWindow = writeWindow;
  213.  
  214.  return(SVERR_NO_ERROR);
  215. }
  216.  
  217. /* *************************************************** */
  218. /* *                             * */
  219. /* * SVO_SetReadName :                               * */
  220. /* *                             * */
  221. /* *************************************************** */
  222.  
  223. ULONG __saveds __asm SVO_SetReadName( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 char *readname, register __a3 APTR future)
  224. {
  225.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  226.  
  227.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  228.  
  229.  SVObjectHandle->ah_ReadName = readname;
  230.  
  231.  return(SVERR_NO_ERROR);
  232. }
  233.  
  234. /* *************************************************** */
  235. /* *                             * */
  236. /* * SVO_SetWriteName :                              * */
  237. /* *                             * */
  238. /* *************************************************** */
  239.  
  240. ULONG __saveds __asm SVO_SetWriteName( register __a1 struct SVObjectHandle *SVObjectHandle_a1, register __a2 char *writename, register __a3 APTR future)
  241. {
  242.  struct SVObjectHandle *SVObjectHandle = SVObjectHandle_a1;
  243.  
  244.  if(!SVObjectHandle) return(SVERR_NO_HANDLE);
  245.  
  246.  SVObjectHandle->ah_WriteName = writename;
  247.  
  248.  return(SVERR_NO_ERROR);
  249. }
  250.